package com.cp.admin.modular.system.service;

import com.baomidou.mybatisplus.service.IService;
import com.cp.admin.api.entity.Result;
import com.cp.admin.modular.system.model.Dict;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 字典服务
 *
 * @author fengshuonan
 * @date 2017-04-27 17:00
 */
public interface IDictService extends IService<Dict> {

    /**
     * 添加字典
     */
    void addDict(String dictName, String dictValues);

    /**
     * 编辑字典
     */
    void editDict(Integer dictId, String dictName, String dicts);

    /**
     * 删除字典
     */
    void delteDict(Integer dictId);

    /**
     * 根据编码获取词典列表
     */
    List<Dict> selectByCode(@Param("code") String code);

    /**
     * 查询字典列表
     */
    List<Map<String, Object>> list(@Param("condition") String conditiion);

    List<Dict> queryChildList(Integer parentId);

    void clealCache();
    /**
     * 频道
     * @return
     */
    List<Dict> queryPDList();
    /**
     * 栏目
     * @return
     */
    List<Dict> queryLMList();
    /**
     * 播放类型
     * @return
     */
    List<Dict> queryBFLXList();
    /**
     * 报价类型
     * @return
     */
    List<Dict> queryBJLXList();
    /**
     * 广告类型
     * @return
     */
    List<Dict> queryGGLXList();
    /**
     * 播出位置
     * @return
     */
    List<Dict> queryBCLXList();
    /**
     * 广告时长
     * @return
     */
    List<Dict> queryGCSCList();
    /**
     * 播放周期
     * @return
     */
    List<Dict> queryBFZQList();

    Result queryProductList();

    /**
     * 获取子级最大编号
     * @param pid
     * @return
     */
    Integer getChildMaxNum(Integer pid);

    /**
     * 获取字典对应的值
     * @param pid   字典ID
     * @param name  字典子项的名字
     * @return
     */
    List<Dict> queryChildDict(Integer pid,String name);
}
